---
title: Tesla Robot Car
description: "Bring your Tesla to Life"
---

We work with DIMO to bring your Tesla to life. This plugin allows you to read data from your Tesla and control it.

## Preqrequisites

### Step 0: Install the DIMO App

Before you can use the DIMO APIs, you need to install the DIMO app on your phone and connect it to your Tesla.

### Step 1: Get a Developer License

To access the DIMO APIs, you must first obtain and configure a [Developer License](https://docs.dimo.org/developer-platform/developer-guide/developer-console#getting-a-license) from DIMO.

Once you have the license, you will receive the following credentials: `Client ID`, `API key`, and `Redirect URI`.

### Step 2: Log in with DIMO

Replace `<Client ID>` and `<Redirect URI>` with your own credentials, then open the following URL in your browser to log in with DIMO and authorize your application to access your Tesla data. You will obtain your `car ID` (`token_id`) on the permission page.

``` DIMO Login URL
https://login.dimo.org/?clientId=<Client ID>&redirectUri=<Redirect URI>&permissionTemplateId=1&entryState=VEHICLE_MANAGER
```

### Step 3: Set up the Tesla Virtual Key

Go to the [Tesla Virtual Key](https://www.tesla.com/_ak/auth.drivedimo.com) page and follow the instructions to set up the virtual key for DIMO.

If everything is set up correctly, you should be able to view your Tesla data in the DIMO app and control your Tesla via the DIMO API.

<Note>
If you encounter any issues, please refer to the [DIMO documentation](https://docs.dimo.org/developer-platform/developer-guide/dimo-developer-sdks/data-sdk).
</Note>

## Basic Commands

Run
```bash Run Robot
uv run src/run.py tesla
```

## Configuration

Provide the Dimo `client_id`, `domain`, `private_key` and `token_id` obtained from the previous steps in your configuration file (`/config.tesla.json5`):

```bash
    "client_id": "",
    "domain": "",
    "private_key": "",
    "token_id": 0
```